#include <bits/stdc++.h>
using namespace std;
#include <atcoder/string>
using namespace atcoder;
using ll = long long;
using pii = pair<int, int>;
#define rep(i, a, b) for (int i = (a); i <= (b); i++)
#define per(i, a, b) for (int i = (a); i >= (b); i--)
#define endl '\n'
const int N = 2e5 + 5;

int n, m;

int main() {
  ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);
  string s;
  cin >> s;
  n = s.size();
  vector<int> sa = suffix_array(s);
  ll ans = 1ll * n * (n + 1) / 2;
  for (auto x : lcp_array(s, sa)) ans -= x;
  cout << ans;
  return 0;
}